Product quality is the quality of the product being produced by the process. In software development the product is the aggregation of many artifacts, including:

  • Deployed, executable code (application, system, etc.), perhaps the most visible of the artifacts, for it is typically this artifact for which the project existed. That is, this is the primary product that provides value to the customer (end-users, shareholders, stakeholders, etc.).
  • Deployed non-executable artifacts, including artifacts such as user manuals and course materials.
  • Non-deployed executables, such as the implementation set of artifacts including the test scripts and development tools created to support implementation.
  • Non-deployed, non-executed artifacts such as the implementation plans, test plans, and various models.

Since many artifacts are based upon others, the quality of all the artifacts is related to some degree. For this reason, the quality of each artifact should be measured and assessed.

Product Quality in Executables (deployed or non-deployed):

The executable artifacts are described by their requirements, stated as use cases or supplemental requirements (such as marketing, performance, etc.). To measure and achieve quality, these requirements must be known and stated in a manner that is clear, concise, and verifiable (testable). For software, not all requirements will be the target of testing by a test worker, (such as market penetration or sales revenue). For those that will be the target of test, a test designer must be capable of specifying a method to verify that the requirement has been achieved (as stated), does not deviate from its intent, and is without flaw.

Product Quality is determined by measuring the following quality dimensions and assessing the products' achievement of these dimensions:

  • Reliability: the deployed codes' resistance to failure (crashing, hanging, memory leaks, etc.) during execution.
  • Function: the deployed code executes the required use cases as intended.
  • Performance: the deployed code executes and responds in a timely and acceptable manner and continues to perform acceptably when subjected to real-world operational characteristics, such as load, stress, and lengthy periods of operation.

For each of these dimensions, one or more individual types of test should be implemented and executed during one or more of the different stages of test.

Additionally, product quality is assessed by measuring the number and types of changes being made to the executable artifact for each new version of the artifact.

See also Concepts: Measuring Quality, Concepts: Types of tests, Concepts: Stages of test, Concepts: Requirements, Artifact: Use Case and Artifact: Supplementary Specifications for additional information.

Product Quality in Non-executables (deployed or non-deployed):

The product quality of non-executables is described by the artifacts' purpose, goal, and structure and is assessed by ensuring that the artifacts achieve the following:

  • Internal consistency within and between the artifacts (language usage, terminology, semantics, etc.).
  • Compliance to guidelines, standards, and contractual requirements (language usage, terminology, semantics, format, content, etc.)

Additionally, product quality of non-executables maybe evaluated by the number and type of changes made between versions of the artifact.

Included in RUP, to aid in your evaluation of the product quality for the artifacts in RUP, we've included the following types of information for most artifacts:

  • Artifact Guidelines and Checkpoints: information on how to develop, evaluate, and use the artifact.
  • Templates: "models" or prototypes of the artifact, providing structure and guidance for content.

See also Concepts: Measuring Quality, Key Concepts: Artifact Guidelines and Key Concepts: Checkpoints for additional information



Copyright  ⌐ 1987 - 2000 Rational Software Corporation

Display Rational Unified Process using frames

Rational Unified Process